# coding=utf-8
"""
    获取本机的局域网 ip
"""

import socket

# @Time    :  2024-10-09 11:23:35
# @Author  :  jiangtong
# @Email   :  gingerqgyy@outlook.com
# @Project :  test_curl_convert
# @File    :  do_local_ip

_ip = '192.168.1.119'


def local_ip():
    """
    获取本机在局域网中的 IP 地址
    """
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    try:
        # 这里使用 8.8.8.8 是因为它是一个公共的 DNS 服务器地址，不会实际发送数据
        s.connect(('8.8.8.8', 80))
        _local_ip = s.getsockname()[0]
    except Exception as e:
        _local_ip = _ip
        print(f'获取本机局域网ip失败, 已使用默认值 : {e}')
    finally:
        s.close()
    return _local_ip
